ФТ и НФТ в сравнении
| Функциональные требования | Нефункциональные требования |
|---|---|
| Функциональное требование определяет саму систему, функцию или компонент системы | Нефункциональное требование определяет качественный атрибут системы (качество системы) |
| Определяет "Что система должна делать?" | Определяет ограничения вида "Каким образом система удовлетворит функциональные требования?" |
| ФТ определяются потребностями Пользователей | НФТ определяются технарями, например, архитектором, техлидом и/или разработчиками |
| Удовлетворение ФТ обязательно | Удовлетворение НФТ не является обязательным |
| Определяются как вариант использования (Use Case) | Определяются как атрибут качества (Quality Attribute) |
| Проводится функциональное тестирование Системы, End2End тестирование функций, тестирование API | Проводится нефункциональное тестирование Системы, тестирование производительности, тестирование безопасности, тестирование юзабилити и др. |
| Обычно легко определить | Обычно сложновато определить |
| ПРИМЕРЫ | ПРИМЕРЫ |
| 1) Система должна производить аутентификацию пользователя при каждом входе пользователя 2) В случае кибератаки система должна выключиться 3) Система должна отправить пользователю на электронную почту письмо с подтверждением регистрации | 1) Электронное письмо с подтверждением регистрации должно быть отправлено не позднее чем через 30 секунд после регистрации 2) Обработка каждого запроса должна быть выполнена в течение 10 секунд после отправки запроса 3) Сайт должен грузиться не более чем за 3 секунды при одновременном количестве пользователей менее 10000 |